﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Drawing;
using COFE.Core.Filter;
using COFE.Core;

namespace COFE.Core.EntryType
{
    /// <summary>
    /// Implemented by IEntryFilter (which define an EntryType) to supply Icons or Overlay.
    /// </summary>
    public interface IEntryTypeIconProvider
    {
        /// <summary>
        /// Called by IEntryTypeIconExtractor to create an Icon.
        /// </summary>
        /// <param name="typeFilter">EntryFilter that associated this IEntryTypeIconProvider.</param>
        /// <param name="size">Icon size</param>        
        /// <returns>Jpeg stream in bytes.</returns>
        byte[] GetIconStream(IEntryFilter typeFilter, IconProperties size);        
    }   
}
